home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 15
/
Aminet 15 - Nov 1996.iso
/
Aminet
/
dev
/
gcc
/
ixemsdk.lha
/
man
/
cat2
/
getfsstat.0
< prev
next >
Wrap
Text File
|
1996-09-01
|
3KB
|
75 lines
GETFSSTAT(2) UNIX Programmer's Manual GETFSSTAT(2)
NNAAMMEE
ggeettffssssttaatt - get list of all mounted file systems
SSYYNNOOPPSSIISS
##iinncclluuddee <<ssyyss//ppaarraamm..hh>>
##iinncclluuddee <<ssyyss//uuccrreedd..hh>>
##iinncclluuddee <<ssyyss//mmoouunntt..hh>>
_i_n_t
ggeettffssssttaatt(_s_t_r_u_c_t _s_t_a_t_f_s _*_b_u_f, _l_o_n_g _b_u_f_s_i_z_e, _i_n_t _f_l_a_g_s)
DDEESSCCRRIIPPTTIIOONN
GGeettffssssttaatt() returns information about all mounted file systems. _B_u_f is a
pointer to statfs structures defined as follows:
typedef struct { int32_t val[2]; } fsid_t;
#define MFSNAMELEN 16 /* length of fs type name, including nul */
#define MNAMELEN 32 /* length of buffer for returned name */
struct statfs {
short f_type; /* type of file system (unused; zero) */
short f_flags; /* copy of mount flags */
long f_bsize; /* fundamental file system block size */
long f_iosize; /* optimal transfer block size */
long f_blocks; /* total data blocks in file system */
long f_bfree; /* free blocks in fs */
long f_bavail; /* free blocks avail to non-superuser */
long f_files; /* total file nodes in file system */
long f_ffree; /* free file nodes in fs */
fsid_t f_fsid; /* file system id */
uid_t f_owner; /* user that mounted the file system */
long f_spare[4]; /* spare for later */
char f_fstypename[MFSNAMELEN]; /* fs type name */
char f_mntonname[MNAMELEN]; /* directory on which mounted */
char f_mntfromname[MNAMELEN]; /* mounted file system */
};
Fields that are undefined for a particular file system are set to -1.
The buffer is filled with an array of _s_t_a_t_f_s structures, one for each
mounted file system up to the size specified by _b_u_f_s_i_z_e.
If _b_u_f is given as NULL, ggeettffssssttaatt() returns just the number of mounted
file systems.
Normally _f_l_a_g_s should be specified as MNT_WAIT. If _f_l_a_g_s is set to
MNT_NOWAIT, ggeettffssssttaatt() will return the information it has available
without requesting an update from each file system. Thus, some of the
information will be out of date, but ggeettffssssttaatt() will not block waiting
for information from a file system that is unable to respond.
RREETTUURRNN VVAALLUUEESS
Upon successful completion, the number of _s_t_a_t_f_s structures is returned.
Otherwise, -1 is returned and the global variable _e_r_r_n_o is set to indi-
cate the error.
EERRRROORRSS
GGeettffssssttaatt() fails if one or more of the following are true:
[EFAULT] _B_u_f points to an invalid address.
[EIO] An I/O error occurred while reading from or writing to the
file system.
SSEEEE AALLSSOO
statfs(2), fstab(5), mount(8)
HHIISSTTOORRYY
The ggeettffssssttaatt() function first appeared in 4.4BSD.
BSD Experimental June 9, 1993 2